﻿using Firefly.Framework.Components.Cameras;
using Microsoft.Xna.Framework;

namespace Firefly.Framework.Components.Water
{
    public interface IQuadWater : IDrawableComponent, ISpatial3D, IHasCamera
    {
        WaterShader Shader { get; set; }
        int Width { get; }
        int Height { get; }
        float LodHeightImpact { get; set; }
        float LevelOfDetail { get; set; }

        float GetHeight(float x, float z);
        float GetHeightEx(float x, float z);
        float GetLodHeight(float x, float z);
        Vector3 GetNormal(float x, float z);
        Vector3 GetNormalEx(float x, float z);
    }
}
